import requests
import logging

# 配置服务端 API 地址
BASE_URL = "http://127.0.0.1:8000"
VIDEO_ENDPOINT = f"{BASE_URL}/zhipuai/video"

def submit_text_to_video(prompt: str, with_audio: bool = True):
    """
    提交文生视频任务
    :param prompt: 文本提示
    :param with_audio: 是否包含音频，默认为 True
    :return 视频 URL 和 封面图片 URL
    """
    headers = {
        "Content-Type": "application/json"
    }
    payload = {
        "prompt": prompt,
        "with_audio": with_audio
    }
    try:
        # 发送 POST 请求
        response = requests.post(VIDEO_ENDPOINT, headers=headers, json=payload, timeout=300)
        if response.status_code != 200:
            logging.error(f"提交文生视频任务失败，状态码：{response.status_code}，响应内容：{response.text}")
            return None
        result = response.json()
        logging.info("提交文生视频任务成功，结果：{}".format(result))
        return result # 返回结果

    except requests.exceptions.RequestException as e:
        logging.error("提交文生视频任务失败，错误信息：{}".format(e))
        return None


def main():
    prompt = """
    雪球：白色博美，性格温顺乖巧，像个软萌甜美的小公举 。对周围事物充满好奇，但胆子有点小，遇到陌生事物会先躲在布丁身后，等确认安全了才会小心翼翼地去探索。 
    布丁：棕色博美，性格活泼开朗，是个勇敢又贴心的小暖男。总是充满活力，喜欢跑前跑后，保护雪球，遇到危险会第一时间挡在雪球面前。 
    日常生活类 一起晒太阳：在温暖的午后，主人把它们的小毯子铺在院子里。布丁会先跳上去，然后用爪子拍拍毯子，示意雪球过来。雪球慢悠悠地走过去，靠在布丁身边，布丁还会用脑袋蹭蹭雪球，一起享受惬意的阳光，画面温馨又有爱 。
    """
    result = submit_text_to_video(prompt)
    if result:
        video_url = result.get("video_url")
        cover_image_url = result.get("cover_image_url")
        print("视频地址：{}".format(video_url))
        print("封面图片地址：{}".format(cover_image_url))

if __name__ == "__main__":
    main()